package com.gwtintegration.smartrf.client;

import com.google.gwt.core.client.JavaScriptObject;
import com.smartgwt.client.data.Criteria;
import com.smartgwt.client.data.DSRequest;
import com.smartgwt.client.data.Record;
import com.smartgwt.client.types.DSOperationType;

public class RequestFactoryDSRequest extends DSRequest {

	public RequestFactoryDSRequest() {
		super();
	}

	public RequestFactoryDSRequest(DSOperationType operationType, Criteria criteria) {
		super(operationType, criteria);
	}

	public RequestFactoryDSRequest(DSOperationType operationType, JavaScriptObject data) {
		super(operationType, data);
	}

	public RequestFactoryDSRequest(DSOperationType operationType, Record data) {
		super(operationType, data);
	}

	public RequestFactoryDSRequest(DSOperationType operationType, String operationId, Criteria criteria) {
		super(operationType, operationId, criteria);
	}

	public RequestFactoryDSRequest(DSOperationType operationType, String operationId, JavaScriptObject data) {
		super(operationType, operationId, data);
	}

	public RequestFactoryDSRequest(DSOperationType operationType, String operationId, Record data) {
		super(operationType, operationId, data);
	}

	public RequestFactoryDSRequest(DSOperationType operationType, String operationId) {
		super(operationType, operationId);
	}

	public RequestFactoryDSRequest(DSOperationType operationType) {
		super(operationType);
	}

	public RequestFactoryDSRequest(JavaScriptObject jsObj) {
		super(jsObj);
	}

	public RequestFactoryDSRequest(DSRequest request) {
		super(request.getJsObj());
	}

	public void setFetchWith(String... fetchWith) {
		setAttribute("fetchWith", fetchWith);
	}

	public String[] getFetchWith() {
		return getAttributeAsStringArray("fetchWith");
	}
}
